package com.liqiye.paymanager.config;

import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;

@Data
@Configuration
@ConfigurationProperties(prefix = "payment")
public class PaymentProperties {

    private Stripe stripe;
    private PayPal paypal;
    private Airwallex airwallex;

    @Data
    public static class Stripe {
        private String publicKey;
        private String secretKey;
        private String webhookSecret;
        private PriceId priceId;
    }

    @Data
    public static class PayPal {
        private String clientId;
        private String clientSecret;
        private String mode; // sandbox 或 live
    }

    @Data
    public static class PriceId {
        private String USD10PerDay;
    }

    @Data
    public static class Airwallex {
        private String baseUrl;
        private String pciBaseUrl;
        private String clientId;
        private String apiKey;
        private String merchantIdentifier;
        private String merchantCertificatePath;
    }

}
